Grill’d are a high-end hamburger restaurant that specialise in healthy burgers. They have grown from having one restaurant in 2004 to 147 restaurants by February 2021. That’s around 35% per annum growth for 17 years. They achieved that by selling franchises, which means their success has depended on being able to pick the right location for their next restaurant.
There are two challenges to this. First, do no harm to your existing stores. You don’t want a new store to cannibalise existing sales. And second, out of all the places that won’t cannibalise your stores, which is the place with the most people who’d want to eat your burgers?
We’ll tackle the first problem today. Let’s make a map showing head office where not to open a new store.
First, let’s find out where the existing restaurants are.
I scraped Sydney restaurant locations from the Grill’d website, and then geocoded it, which involves asking Google Cloud to figure out the latitude and longitude for the locations provided. The script for that can be found here.
Here’s a table of the Sydney restaurants.
There are 19 stores in Sydney. Let’s put them on a map. (Hover your mouse over a restaurant to see its address and phone number.)
From a quick scan, we can see that most restaurants are located around the CBD, although there are a few others scattered across the suburbs.
To colour-code the map according to distance from existing stores, we have to measure distance from existing stores to various other points on the map. So we’re going to need to do two things:
Cut Our Map Into Squares - Doing that will allow us to measure the distance from the middle of each square to each of our restaurants.
Change Co-ordinate Reference Systems - When measuring the distance between two points in an area as large as Sydney, the measurements get thrown off because of the curvature of the Earth. Geographers get around this by using clever maths to flatten the map at that location to make the measurement, in the same way that you might want to flatten a basketball to measure the distance between two points on it with a ruler.
Let’s start with a simple outline of Greater Sydney.
Now let’s cut it into small squares of 2km on each side: We can now measure the distance from the centre of each grid square to the nearest restaurant.
For example, let’s take one random grid square somewhere in Sydney, say, in the south-west … How far away is that square from all the Grill’d restaurants? Let’s add them to the map.
Now we can measure the distance between our random grid square and each restaurant. This will allow us to find the nearest restaurant to our random square.
If we can do that for one grid square, we can do that for all grid squares. This gives us a heat map.
Click anywhere in the map to find out how far away that square is from the nearest Grill’d restaurant.
The map can show you at a glance which suburbs are missing out on the deliciousness of Grill’d’s Healthy Burgers. Liverpool for instance. And Bankstown. And Hornsby. In principle, we don’t want to open another store in Chatswood as it would cannibalise customers from the store already there.
There are a couple of directions this project could go next.
First, now that we’ve figured out where the next restaurant shouldn’t go, we could figure out where it should go. This is a problem of prediction. It could be reframed to “What are the most important location factors which predict restaurant success?” And once it’s put like that, sites like the ABS and CoreLogic have tens of thousands of datapoints available about each suburb to help us understand not only which factors are important, but how important they are. All we’d need is past sales data to train a time series model on.
Second, we could tweak the size of the circles. Right now, they’re set at 5km intervals, which is an arbitrary number. But do sales really start to get cannibalised when the restaurants are 5km from each other, or is it some other number? We could figure this out by looking at whether our standard model becomes less good at predicting sales as restaurants get closer to each other. But we’d need sales data.
And that’s for another day.